1. Field of Invention
The present invention relates to a circuit for calculation of values for membership functions in an electronic controller operating with fuzzy logic procedures.
Specifically the present invention relates to a circuit for calculation of values of membership functions of triangular or trapezoidal form and defined in a so-called discourse universe discretized in a finite number of points. The controller includes a central control unit equipped with a memory section for storage of said membership functions, and connected to a microprocessor which is connected to an interface.
2. Discussion of the Related Art
Fuzzy logic is now accepted as a technique capable of supplying solutions for a broad range of control problems for which the conventional techniques, e.g. those based on Boolean logic, have proven unsuitable for providing acceptable performance at acceptable cost.
Fuzzy logic provides a method for modelling `approximate` modes of reasoning typical of the human mind and which play a basic role in the human ability to make decisions under conditions of uncertainty.
Fuzzy logic operates on a linguistic description of reality using a particular class of variables termed linguistic variables. The value of these variables consists e.g. of words or phrases of any natural or artificial language. Basically, to each variable is assigned a corresponding semantic meaning of the words or phrases which are used in modelling of a given problem.
In addition, with each variable can be syntactically combined a group of values dependent on it which can take on different meanings depending on the context in which they are employed. These values are obtained starting from a primary term representing the variable, from its contrary, and from a series of so-called modifiers of the primary term. Such a system is described in European patent application no. 92830095.3.
Each value assigned to a linguistic variable is represented also by a so-called fuzzy set, i.e. a possibilistic distribution function which links each value of the variable in the corresponding definition domain, known also as discourse universe.
The functions which identify a fuzzy set in the discourse universe of a variable are termed membership functions f(m). For example, a value f(m)=0 indicates nonmembership of the point m in the fuzzy set identified by the function f whereas value f(m)=1 indicates the certainty of the membership of m in the fuzzy set. The entirety of all the fuzzy sets of a linguistic variable is termed `term set`.
For the membership functions two different types of representation are possible, analytical and vectorial. The former is a function of the definition domain and allows performing a so-called mapping of said domain in a range of values between 0 and 1.
The second type consists of a vectorial sample representation of the membership function obtained by dividing the definition domain in m points and the range [0, 1] in 1 levels.
Thanks to calculation devices operating in accordance with a reality representation and modelling methodology based on fuzzy logic it has become possible to treat analytically in a manner much closer to human reasoning purely abstract concepts.
To obtain a satisfactory result it is however of basic importance that the membership function of the fuzzy sets be sufficiently and correctly defined in the control device. Indeed, the more said definition reflects the semantics of the fuzzy concept the more the incidence of a term in a rule will be correct and consequently also the value output by the electronic controller operating with fuzzy procedures will reflect reality.
At present, the definition or memorization in an electronic controller based on the fuzzy logic of the membership functions which identify the fuzzy sets represents one of the major constraints on the development of new fuzzy logic applications, thus limiting the theoretical potentials of this methodology.
Indeed, if for the implementation on hardware of the membership functions it is desired that said functions respect the semantics of the fuzzy concept so as to obtain a correct incidence of a term in a rule, one is forced to use a considerable space in the memory. This makes fuzzy logic advantageous only for those applications where the term set of the linguistic variable consists of a small number of membership functions.
The data for a membership function are normally stored in a memory word. In known devices, the memory area occupied is thus negatively influenced by the number of data necessary to define these membership functions. In many cases it has proven sufficient to store triangular or trapezoidal membership functions, so as to reduce the amount of data necessary for their storage.
With these triangular or trapezoid membership functions, it is not necessary to store all values of the function at all the points of the discourse universe since only the points where the curve changes slope and the value of this slope are significant.
In the description below we shall call `significant value storage` a storage of the membership functions by means of values of its slopes and of the coordinates of the points where said slopes change value.
The saving of memory area by storage of significant values requires a subsequent reconstruction of the individual values of the membership functions necessary for application of the rules of inference which control the fuzzy logic process through computing means dedicated to this purpose.
The technical problem underlying the present invention is to provide a digital circuit which would permit reconstruction of the value of a given membership function stored as significant values at a predetermined input value belonging to the discourse universe. This allows use of storage of significant values of the membership functions and hence a considerable saving of memory exceeding the shortcomings which still limit the known solutions.